Use XFT in Lucid dialogs if available.
authorJan D. <jan.h.d@swipnet.se>
Sun, 11 Apr 2010 18:25:09 +0000 (20:25 +0200)
committerJan D. <jan.h.d@swipnet.se>
Sun, 11 Apr 2010 18:25:09 +0000 (20:25 +0200)
commit80014bacf4f997f8976f70d9f1dc556833765363
tree43baed58d02ca1c985ed00e9673d2c3a91bf2435
parent517db8c33ca3486cc521e4dc772d490cc47d5c5e
Use XFT in Lucid dialogs if available.

* xmenu.c (apply_systemfont_to_dialog): New.
(create_and_show_dialog): Call apply_systemfont_to_dialog if HAVE_XFT.

* lwlib-Xaw.c (widget_xft_data): New for Xft data.
(fill_xft_data, openFont, get_text_width_and_height)
(draw_text, set_text, find_xft_data, command_press)
(command_reset): New functions.
(xaw_update_one_widget): Call set_text for dialog and buttons
if HAVE_XFT.  Also set internalHeight for buttons.
(xaw_destroy_instance): Free all Xft related data.
(button_actions, buttonTrans): New structures.
(make_dialog): Call XtAppAddActions for button_actions.
Find xft font to use and call fill_xft_data for widgets.
(xaw_create_dialog): Pass instance parameter to make_dialog.

* lwlib-int.h (_widget_instance): Add Xft data if HAVE_XFT.
Override translations for buttons.  If depth is 16 or more, tell
Xaw3d to not be nice to colormap.
Remove separator widget, use XtNhorizDistance on first right button
instead.

* xresources.texi (Lucid Resources): Mention faceName for dialogs.
doc/emacs/ChangeLog
doc/emacs/xresources.texi
etc/NEWS
lwlib/ChangeLog
lwlib/lwlib-Xaw.c
lwlib/lwlib-int.h
src/ChangeLog
src/xmenu.c